1. Field of the Invention
The present invention relates to an on-board navigation apparatus, and, more particularly, to an on-board navigation apparatus which displays a screen including map information on a display unit (hereinafter referred to as "display") on the basis of the location of the vehicle in which the apparatus is mounted.
2. Description of Background Information
Recently on-board navigation apparatuses have come to be employed practically, which are designed to have map information stored in memory, read the map information from the memory, and display it on a display together with the current location of a vehicle in order to guide the vehicle to an intended destination.
On-board navigation apparatuses should accurately and promptly provide a driver with the proper and latest map information that covers the current location or meets the user's request, in accordance with the location of the constantly moving vehicle, i.e., the current location of the vehicle, sequentially by means of a display. The on-board navigation apparatuses therefore require faster reading of map information from the memory and quicker presentation of the map information on the display. FIG. 1 presents a block diagram which illustrates the general structure of such an on-board navigation apparatus and exemplifies a display device designed to display the needed information on the display.
Referring to this diagram, a terrestrial magnetism sensor 1 outputs the direction data of the vehicle based on terrestrial magnetism (geomagnetic field), an angular velocity sensor 2 detects the angular velocity of the vehicle, a travel distance sensor 3 detects the distance of the vehicle, and a GPS (Global Positioning System) device 4 detects the current location of the vehicle or the like from latitude and longitude information and the like. Outputs from these sensors and device are supplied to a system controller 5.
The system controller 5 comprises an interface 6, a CPU (Central Processing Unit) 7, a ROM (Read Only Memory) 8, a RAM (Random Access Memory) 9, a recording medium 10, a buffer memory 11, a graphic controller 13, and a display controller 15. The interface 6 receives outputs of the sensors 1 to 3 and GPS device 4, and performs processing, such as A/D conversion, on the received data. The CPU 7 computes the amount of travel, etc. of the vehicle, on the basis of the data from the sensors 1 to 3 and GPS device 4 which are sequentially sent from the interface 6 as well as processes a variety of image data. In the ROM 8 various processing programs for the CPU 7 and other necessary information are previously stored. The RAM 9 is accessed so that information necessary for executing the programs will be written therein or read out therefrom. The recording medium 10, constituted of a so-called CD-ROM, IC card, or the like, has digitized map information previously recorded thereon. The buffer memory 11, constituted by a V-RAM (Video RAM) or the like, serves as a frame buffer to temporarily store image information that is promptly displayable. The graphic controller 13 draws received graphic data, such as maps, into the buffer memory 11 and outputs the data as image information in response to a command from the CPU 7. The display controller 15 controls a display 12 such as a liquid crystal display device or CRT in accordance with the image information from the graphic controller 13. An input device 14, constituted by a keyboard or the like, issues various commands and the like to the system controller 5 when a user operates keys.
A description will now be given of the operation of the display control section of this on-board navigation apparatus in FIG. 1, which comprises the buffer memory 11, graphic controller 13 and display controller 15.
The CD-ROM 10 contains 16 sheets of map data as block data, which are image data corresponding to 16 blocks acquired by dividing, for example, the map of Japan into four sections in each of the vertical direction (north and south) and horizontal direction (east and west). FIG. 2 illustrates a memory structure image in the CD-ROM 10. One piece of block data or one sheet of map data contains image information corresponding to the map of the associated area with a capacity of 320 dots horizontal by 240 dots vertical, with map codes 00m to 33m affixed to each piece of map data as illustrated.
The storage contents of the buffer memory 11 are expressed by the memory structure image as given in FIG. 3. The buffer memory 11 has a memory area of 640 dots horizontal by 480 dots vertical per memory unit, where four sheets of the above map data are storable. This memory area will hereafter be referred to as "drawing screen". The buffer memory 11 has a capacity to store four drawing screens 0H to 3H which are to be arranged as illustrated.
The display 12 can extract drawing data to be displayed in an arbitrary area d of 320 dots horizontal by 240 dots vertical in an arbitrary drawing screen from the screen data of four screens, written in the buffer memory 11 by the graphic controller 13, and enable the extracted data to be displayed. As this area d is displayed on the display 12, the area will hereafter be referred to as "display screen".
A description will now be given of what procedures the CPU 7 executes to display given drawing data on the display 12 with the above memory structures and hardware conditions, or a method of displaying and scrolling screens.
FIG. 4 is a flowchart illustrating the procedures. This flowchart is extracted from the main routine, which performs the general control of the navigation system. The main routine is a program disclosed in, for example, Japanese Unexamined Parent Publication No. 63-12096, and its detailed description will not be given here.
When the display screen d and a display center (e.g., vehicle's location) P as a reference point to determine the position of that display screen on a map before scrolling are positioned in the map of Japan as in FIG. 5, for example, and screen scrolling is instructed by a user operating the keyboard or the system's request, the CPU 7 first reads out the latitude and longitude of the new display center point P from the RAM 9 (step S1).
On the basis of the latitude and longitude of that display center point P, the CPU 7 fetches a map code 12m of the map including the point P, and computes map codes for eight maps surrounding that map, 01m, 02m, 03m, 11m, 13m, 21m, 22m and 23m (step S2).
The map codes are codes to identify individual pieces of block data, so that the mutual positional relationship between the block data may be found out. The CPU 7 therefore determines from the acquired map codes whether or not predetermined four types of screens (four screens, each composed of four pieces of map and each including the piece which contains the display center point P as the lower right portion, lower left portion, upper right portion and upper left portion thereof) have already been drawn in the drawing screens 0H to 3H in the buffer memory 11 (step S3). As the display center point P lies in the map with the map code 12m, the drawing screen 0H will consist of the map with that map code 12m located on the lower right, and three other maps adjacent thereto, and the drawing screens 1H to 3H will respectively include the map with the map code 12m on the lower left, upper right and upper left, as shown in FIG. 6, so that the CPU 7 can determine the screen arrangements.
If the conditions in the above step S3 for the drawing screens 0H to 3H are not satisfactory, the CPU 7 reads out the necessary map data to be supplied from the CD-ROM 10, and recombines map data in the drawing screen in the buffer memory 11 with the supplemented data or writes it in the drawing screen (step S4). If those conditions are met, which means that no alteration of the drawing screens is necessary, the CPU 7 will not access the CD-ROM 10, leaving the individual drawing screens intact to maintain the contents in the previous flow.
With the necessary map data arranged on the individual drawing screens, the CPU 7 acquires a drawing screen that includes the entire display screen d (step S5). This drawing screen is the drawing screen 2H in this example as shown in FIG. 6.
Then, among the acquired drawing screen 2H that region of the display screen d to be displayed on the display 12 with the display center point P located as shown in FIG. 5 will be computed (step S6). The region of the display screen d can be obtained by segmenting the drawing data (map data) according to address information which only the drawing screen 2H has independently of the other drawing screens and checking the segments with coordinates on the display screen d.
The graphic controller 13 transfers the drawing data, read from the buffer memory 11, as display data to the display controller 15 together with various sync signals on the basis of the attained address information, and the display controller 15 converts the received display data into a proper signal and drives the display 12 to display the display data before the flow returns to the main routine (step S7).
With the above-described arrangement, as long as the display center point P lies in the same block (the map with the map code 12m in this case), the drawing screen to be displayed and a region in that drawing screen have only to be changed, requiring no writing of new map data in the drawing screen. That is, since no data is transferred from the CD-ROM 10 to the buffer memory 11, the operational sequence up to data display can be executed at a high speed.
When the display center point P moves beyond the region of the map with the map code 12m into the block with the map code 11m as shown in FIG. 7, for example, those map data with the map codes 03m, 13m and 23m in the drawing screens before scrolling, i.e., the drawing screens 1H and 3H in FIG. 6, become unnecessary. When map data to be drawn in a drawing screen is insufficient, therefore, the storage contents of the drawing screens 1H and 3H having the map data with the map code 11m located on the lower right and upper right as shown in FIG. 8 will be rewritten anew as explained in the descriptions of steps S3 and S4. Therefore, eight sheets of maps in total are to be transferred from the CD-ROM 10 to the buffer memory 11.
In the flow of the display operation including scrolling, what takes most time is a process of reading data from the CD-ROM 10 and writing map data in a drawing screen in the buffer memory 11 as done in step S4. This means that the less the amount of map data to be written in the memory, the shorter the processing time becomes accordingly. On the premise that the above-described memory structures are provided for the drawing screen and display screen, however, the memory capacity must be increased, thus making it difficult to easily accomplish a faster display operation.